import lottie from 'lottie-miniprogram';//引入lottie npm包
/**
 * @function json动画方法
 * @param {*} id canvas的id选择器
 * @param {*} width canvas的宽
 * @param {*} height canvas的高
 * @param {*} context this指向的对象
 * @param {*} loop 是否循环播放
 * @param {*} autoplay 是否立即播放
 * @author 徐声
 */
export default (id,width,height,path,loop = true,autoplay = true)=> {
    wx.createSelectorQuery().select(id).node(res => {
        const canvas = res.node
        const context = canvas.getContext('2d')
        canvas.width = width; //设置宽高，也可以放到wxml中的canvas标签的style中
        canvas.hight = height;

        lottie.setup(canvas)    //要执行动画，必须调用setup,传入canvas对象
        lottie.loadAnimation({//微信小程序给的接口，调用就完事了，原理不太懂
            loop: loop,//是否循环播放（选填）
            autoplay: autoplay,//是否自动播放（选填）
            path:path,//lottie json包的网络链接，可以防止小程序的体积过大，要注意请求域名要添加到小程序的合法域名中
            rendererSettings:{
                context//es6语法：等同于context:context（必填）
            }       
        })
    }).exec()
}